Embodiments of the present invention relate to multiprocessor systems, and more particularly to improving reliability in such multiprocessor systems.
Computer systems are becoming increasingly complex and are beginning to include advanced processors, including multicore processors. Dual-core processors having two processor cores that execute instructions concurrently have been introduced. It is anticipated that in the future, processors will be manufactured that include additional cores, e.g., more than two cores. Current road maps include processors with four and eight cores.
Additionally, long term it is anticipated that processors will evolve to a many-core environment, in which many cores are present in a single processor package, and even on a single substrate or die of the package. Accordingly, it is anticipated that processors with 8, 16, 32, 64, 128 or more cores will become available in the future. In addition to the complexity associated with such many-core processors, reliability concerns increase. Specifically, due to various technology-related issues, cores in a many-core processor will exhibit higher failure rates than single core or dual-core processors.
While various reasons exist for these greater failure rates, all of these reasons combine such that cores of a many-core processor may suffer from lifetimes that shorten from generation to generation. Such decreasing lifetimes can be attributed to a number of sources of degradation including electromigration, stress migration, time dependent dielectric breakdown (TDDB), negative bias temperature instability (NBTI), and thermal cycling. Most of these failure mechanisms are expressed at elevated temperatures, i.e., the higher the temperature, the lower the core mean time to failure (MTTF). The failure rate of the processor or a core thereof is commonly referred to as failures in time (FIT), which is the expected number of failures in 109 hours. Using a FIT value, one can attain the MTTF as 1/FIT. For various technologies, MTTF is obtained assuming steady state operation at fixed conditions (e.g., temperature, voltage, frequency and utilization). Accordingly, increasing any of these parameters can cause further degradation of lifetime reliability.